import loadable from '@loadable/component';

import { Loading, ErrorBoundary } from '../../components';
import { Props, loadData } from './UserInfo';

const UserInfo = loadable(() => import('./UserInfo'), {
  fallback: <Loading />,
}); // code splitting

export default (props: Props): JSX.Element => (
  <ErrorBoundary>
    <UserInfo {...props} />
  </ErrorBoundary>
);
/**
 * 如何在项目中提升项目的健壮性
 * 1. 当组件发生变化时，在外侧包裹一层 ErrorBoundary，避免报错，展示的是一个多维度的错误信息
 */

export { loadData };
